<?php
namespace Menory\Standard\Payment;

abstract class AbstractPaymentData {
    
    /**
     * @var string 商户订单号
     */
    private $outTradeNo;
    
    /**
     * @var string 商户支付类型
     */
    private $outTradeType;
    
    /**
     * @var string 异步通知回调地址
     */
    private $notifyUrl;
    
    /**
     * 生成商户订单号
     * @return string
     */
    public function genOutTradeNo() {
        
        $timestamp = explode('.', microtime(true))[1];
        return date('Ymd')
            . substr(time(), -5)
            . str_pad($timestamp, 4, 0, STR_PAD_RIGHT)
            . rand(10, 99);
        
    }
    
}